const format = require('../../../utils/formatTime.js')
Page({
  data: {
    addPointNum: 0, //本次同步总的积分数量
    weRunToPointData: [] // 存储本次同步积分的数据
  },
  onLoad: function (options) {

  },
  // 获取运动信息
  getUserRun() {
    // 获取当前用户的授权状态
    wx.getSetting({
      success: (res) => {
        // console.log(res)
        if (!res.authSetting['scope.werun']) {
          // 提前向用户发起授权请求
          wx.authorize({
            scope: 'scope.werun',
            success: () => {
              // 读取微信运动数据
              this.getWeRunData()
            },
            // 如果用户拒绝授权，每次进入页面都会执行fail函数
            fail() {
              wx.showModal({
                title: '读取运动数据授权失败',
                content: '请在右上角菜单【设置】中开启授权'
              })
            }
          })
        } else {
          // 读取微信运动数据
          this.getWeRunData()
        }
      },
    })
  },
  // 获取运动数据
  getWeRunData() {
    // 显示正在加载中
    wx.showLoading({
      title: 'loading...',
    })
    const that = this
    wx.getWeRunData({
      success: (res) => {
        // 敏感数据对应的云 ID，开通云开发的小程序才会返回，可通过云调用直接获取开放数据
        // 调用云函数将加密运动的参数解密
        wx.cloud.callFunction({
          name: 'decodewerundata',
          data: {
            weRunData: wx.cloud.CloudID(res.cloudID)
          }
        }).then(res => {
          // 返回同步的每条记录的更新数据  创建变量，用于统计总的新增的积分数量
          let addPointNum = 0
          for (let i in res.result) {
            addPointNum += res.result[i].changePoint,
              res.result[i].time = format.formatDate(new Date(res.result[i].time * 1000))
          }
          that.setData({
            addPointNum,
            weRunToPointData: res.result,
          })
        })
      },
      complete() {
        wx.hideLoading()
      }
    })
  },
  // 同步运动数据按钮 获取运动信息
  onSyncButtonClick() {
    this.getUserRun()
  }
})